Platform Explorer / Nuxeo Platform 2023.22

Component org.nuxeo.ecm.platform.publisher.impl.service.PublisherServiceImpl

Documentation

Resolution Order

451
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.

Start Order

865
The start order represents the order in which this component has been started by the Nuxeo Runtime framework.
This number is interesting to tweak if your Java component interacts with other components, and needs to be started before or after another one.
It can be changed by implementing the method "Component#getApplicationStartedOrder()" on your Java component: components are sorted according to this reference value, in increasing order.
The default value is 1000, and the repository initialization uses number 100. Negative values can also be used.

Implementation

Class: org.nuxeo.ecm.platform.publisher.impl.service.PublisherServiceImpl

Services

Extension Points

XML Source

<?xml version="1.0"?>

<component
    name="org.nuxeo.ecm.platform.publisher.impl.service.PublisherServiceImpl">
  <implementation
      class="org.nuxeo.ecm.platform.publisher.impl.service.PublisherServiceImpl"/>

  <documentation>
    @author Thierry Delprat (td@nuxeo.com)
  </documentation>

  <service>
    <provide
        interface="org.nuxeo.ecm.platform.publisher.api.PublisherService"/>
  </service>


  <extension-point name="tree">
    <documentation>
      Used to register the PublicationTree implementations available to build
      treeInstance.

      A sample contribution could be
      <code>
        <publicationTree name="CoreTree"
                     class="org.nuxeo.ecm.platform.publisher.impl.core.SectionPublicationTree"/>
      </code>
      It registers a SectionPublicationTree, tree implementation used to publish documents on
      local Section documents.

      @author Thierry Delprat (td@nuxeo.com)
    </documentation>
    <object
        class="org.nuxeo.ecm.platform.publisher.descriptors.PublicationTreeDescriptor"/>
  </extension-point>

  <extension-point name="treeInstance">
    <documentation>
      Used to register actual publication tree instances, where we define
      the factory to use, the underlying tree to use, its name / title.

      Here is the default contribution:
      <code>
        <publicationTreeConfig name="DefaultSectionsTree" tree="RootSectionsCoreTree"
            factory="CoreProxy"
            title="label.publication.tree.local.sections" >
          <parameters>
            <!-- <parameter name="RootPath">/default-domain/sections</parameter> -->
            <parameter name="RelativeRootPath">/sections</parameter>
            <parameter name="enableSnapshot">true</parameter>
            <parameter name="iconExpanded">/icons/folder_open.gif</parameter>
            <parameter name="iconCollapsed">/icons/folder.gif</parameter>
          </parameters>
        </publicationTreeConfig>
      </code>

      Parameters:
      - RootPath: it's used when you want to define the root publication node
      of your PublicationTree. You can't use RootPath AND RelativeRoothPath
      parameter.

      - RelativeRootPath: used when you just want to define a relative path
      (without specifying the domain path). A PublicationTree instance will be
      created automatically for each Domain, appending the RelativeroothPath
      value to each Domain.

      - iconExpanded and iconCollapsed: specify which icons to use when
      displaying the PublicationTree on the interface.

      @author Thierry Delprat (td@nuxeo.com)
    </documentation>
    <object
        class="org.nuxeo.ecm.platform.publisher.descriptors.PublicationTreeConfigDescriptor"/>
  </extension-point>

  <extension-point name="factory">
    <documentation>
      A factory is used to actually create the published document.
      It also manages the approval / rejection workflow on published documents.

      <code>
        <publishedDocumentFactory name="CoreProxy"
            class="org.nuxeo.ecm.platform.publisher.impl.core.CoreProxyFactory"/>
      </code>

      @author Thierry Delprat (td@nuxeo.com)
    </documentation>
    <object
        class="org.nuxeo.ecm.platform.publisher.descriptors.PublishedDocumentFactoryDescriptor"/>
  </extension-point>

  <extension-point name="validatorsRule">
    <documentation>
      A validators rule object is aiming at being
      responsible of computing the validators of a just published document.

      <code>
        <validatorsRule name="CoreValidatorsRule"
            class="org.nuxeo.ecm.platform.publisher.rules.DefaultValidatorsRule"/>
      </code>

      @author Thomas Roger(troger@nuxeo.com)
    </documentation>
    <object
        class="org.nuxeo.ecm.platform.publisher.rules.ValidatorsRuleDescriptor"/>
  </extension-point>

  <extension-point name="rootSectionFinderFactory">
    <documentation>
      A factory is used to create the RootSectionFinder implementation that is used in the PublisherTree administration and in the RootSectionsPublicationTree implementation.
      <code>
        <rootSectionFinderFactory
            class="org.nuxeo.ecm.platform.publisher.impl.finder.DefaultRootSectionsFinder"/>
      </code>

      @author Thierry Delprat (td@nuxeo.com)
    </documentation>
    <object
        class="org.nuxeo.ecm.platform.publisher.descriptors.RootSectionFinderFactoryDescriptor"/>
  </extension-point>


</component>